CREATE TABLE [dbo].[TaskItem]
(
[TaskItemKey] [uniqueidentifier] NOT NULL,
[Category] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[Subject] [nvarchar] (100) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[AssignedToKey] [uniqueidentifier] NOT NULL,
[IsGroupTask] [bit] NOT NULL CONSTRAINT [DF_TaskItem_IsGroupTask] DEFAULT ((0)),
[DueDate] [datetime] NULL,
[StartDate] [datetime] NULL,
[TaskItemStatusCode] [int] NOT NULL CONSTRAINT [DF_TaskItem_TaskItemStatusCode] DEFAULT ((0)),
[StatusDate] [datetime] NULL CONSTRAINT [DF_TaskItem_StatusDate] DEFAULT (getdate()),
[Priority] [int] NOT NULL CONSTRAINT [DF_TaskItem_Priority] DEFAULT ((1)),
[CompletedOn] [datetime] NULL,
[CompletedByUserKey] [uniqueidentifier] NULL,
[NotifyCreatorCode] [int] NOT NULL CONSTRAINT [DF_TaskItem_NotifyCreatorCode] DEFAULT ((0)),
[UpdatedOn] [datetime] NOT NULL,
[UpdatedByUserKey] [uniqueidentifier] NOT NULL,
[CreatedByUserKey] [uniqueidentifier] NOT NULL,
[CreatedOn] [datetime] NOT NULL,
[AccessKey] [uniqueidentifier] NOT NULL,
[OpportunityKey] [uniqueidentifier] NULL,
[Comment] [ntext] COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[MarkedForDeleteOn] [datetime] NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
ALTER TABLE [dbo].[TaskItem] ADD CONSTRAINT [PK_TaskItem] PRIMARY KEY CLUSTERED ([TaskItemKey]) ON [PRIMARY]
GO
CREATE NONCLUSTERED INDEX [AK_TaskItem_AccessKey] ON [dbo].[TaskItem] ([AccessKey]) ON [PRIMARY]
GO
CREATE NONCLUSTERED INDEX [IX_TaskItem_AssignedToKey] ON [dbo].[TaskItem] ([AssignedToKey]) ON [PRIMARY]
GO
CREATE NONCLUSTERED INDEX [IX_TaskItem_CompletedByUserKey] ON [dbo].[TaskItem] ([CompletedByUserKey]) ON [PRIMARY]
GO
CREATE NONCLUSTERED INDEX [IX_TaskItem_CreatedByUserKey] ON [dbo].[TaskItem] ([CreatedByUserKey]) ON [PRIMARY]
GO
CREATE NONCLUSTERED INDEX [IX_TaskItem_TaskItemStatusCode] ON [dbo].[TaskItem] ([TaskItemStatusCode]) ON [PRIMARY]
GO
CREATE NONCLUSTERED INDEX [IX_TaskItem_UpdatedByUserKey] ON [dbo].[TaskItem] ([UpdatedByUserKey]) ON [PRIMARY]
GO
ALTER TABLE [dbo].[TaskItem] ADD CONSTRAINT [FK_TaskItem_AccessMain] FOREIGN KEY ([AccessKey]) REFERENCES [dbo].[AccessMain] ([AccessKey])
GO
ALTER TABLE [dbo].[TaskItem] ADD CONSTRAINT [FK_TaskItem_TaskItemStatusRef] FOREIGN KEY ([TaskItemStatusCode]) REFERENCES [dbo].[TaskItemStatusRef] ([TaskItemStatusCode])
GO
ALTER TABLE [dbo].[TaskItem] ADD CONSTRAINT [FK_TaskItem_UniformRegistry] FOREIGN KEY ([TaskItemKey]) REFERENCES [dbo].[UniformRegistry] ([UniformKey])
GO
ALTER TABLE [dbo].[TaskItem] ADD CONSTRAINT [FK_TaskItem_UserMain_CompletedBy] FOREIGN KEY ([CompletedByUserKey]) REFERENCES [dbo].[UserMain] ([UserKey])
GO
ALTER TABLE [dbo].[TaskItem] ADD CONSTRAINT [FK_TaskItem_UserMain_CreatedBy] FOREIGN KEY ([CreatedByUserKey]) REFERENCES [dbo].[UserMain] ([UserKey])
GO
ALTER TABLE [dbo].[TaskItem] ADD CONSTRAINT [FK_TaskItem_UserMain_UpdatedBy] FOREIGN KEY ([UpdatedByUserKey]) REFERENCES [dbo].[UserMain] ([UserKey])
GO